Prioritization of collaboration messages and groups

ABSTRACT

In one embodiment, a method includes associating a user with a collaboration group at a collaboration server, tracking activity of participants in the collaboration group at the collaboration server, processing a message received in the collaboration group at the collaboration server, assigning a priority to the message for the user based on the activity of the participants in the collaboration group, and presenting a notification of the message to the user based on the priority of the message. An apparatus and logic are also disclosed herein.

TECHNICAL FIELD

The present disclosure relates generally to communication networks, andmore particularly, to data driven collaboration.

BACKGROUND

Collaboration rooms (also referred to as chat rooms) have become acommon form of communication for both personal and business use.Conventional collaboration systems are very noisy with many differentrooms and conversations that may not be particularly useful, but may beprioritized to the top of a messaging queue based on recent activity,with notifications provided in the same way as for rooms or messagesthat are more relevant and important, and possibly in far greater needof attention and input.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 illustrates an example of a network in which embodimentsdescribed herein may be implemented.

FIG. 2 depicts an example of a network device useful in implementingembodiments described herein.

FIG. 3 is a flowchart illustrating an overview of a process forprioritization of collaboration messages, in accordance with oneembodiment.

FIG. 4 is a schematic illustrating intelligent and targeted messagingnotifications, in accordance with one embodiment.

Corresponding reference characters indicate corresponding partsthroughout the several views of the drawings.

DESCRIPTION OF EXAMPLE EMBODIMENTS Overview

In one embodiment, a method generally comprises associating a user witha collaboration group at a collaboration server, tracking activity ofparticipants in the collaboration group at the collaboration server,processing a message received in the collaboration group at thecollaboration server, assigning a priority to the message for the userbased on the activity of the participants in the collaboration group,and presenting a notification of the message to the user based on thepriority of the message.

In another embodiment, an apparatus generally comprises an interface forreceiving tracked activity of participants in a collaboration group andtransmitting notifications to a user of the collaboration group, aprocessor for processing a message received in the collaboration group,assigning a priority to the message for the user based on the activityof the participants in the collaboration group, and presenting anotification of the message to the user based on the priority of themessage, and memory for storing metrics computed based on the trackedactivity and used in assigning the priority.

In yet another embodiment, logic is encoded on one or morenon-transitory computer readable media for execution and when executedoperable to associate a user with a collaboration group at acollaboration server, track activity of participants in thecollaboration group, process a message received in the collaborationgroup, assign a priority to the message for the user based on theactivity of the participants in the collaboration group, and present anotification of the message to the user based on the priority of themessage.

Example Embodiments

The following description is presented to enable one of ordinary skillin the art to make and use the embodiments. Descriptions of specificembodiments and applications are provided only as examples, and variousmodifications will be readily apparent to those skilled in the art. Thegeneral principles described herein may be applied to other applicationswithout departing from the scope of the embodiments. Thus, theembodiments are not to be limited to those shown, but are to be accordedthe widest scope consistent with the principles and features describedherein. For purpose of clarity, details relating to technical materialthat is known in the technical fields related to the embodiments havenot been described in detail.

Communication networks are often used for collaboration among aplurality of users. Collaboration systems (also referred to chat systemsor forums) allow for messages to be sent from a sender to one or morerecipients through a computer network almost instantly. A collaboration(chat) client may run on a user's computer and allow the user tocommunicate with other participants of the chat room using collaboration(chat) services. Collaboration applications may be used by individualsfor personal or business communications and allow users to create, meet,message, call, whiteboard, and share, regardless of whether they areworking together or apart, in one continuous work stream, before,during, and after meetings.

Messages received during a collaboration session may be presented to auser in a collaboration (chat) window on a user device and the user maymaintain multiple sessions and windows. In conventional systems, as newmessages appear and the window fills with messages, the oldest messagesmay be scrolled or otherwise displaced from the window. It is notuncommon for users to have several windows open at one time, eachmonitoring a separate session. The constant flow of information insimultaneous sessions makes it difficult for a user to effectivelymonitor incoming messages. There are ways to turn off messagenotifications for a particular room but this typically needs to be donemanually for each room and does not alter the fact that the room stillpresents itself at the top of the user's queue of unread rooms.

There is a significant cost factor involved in chat room and messagingsystem maintenance at a single user and overall enterprise level withcost incorporating a combination of time, interruption level, andfrustration in having to deal with the frequency of noise involved inmaintaining and staying abreast of a multitude of overly chattymessaging rooms.

The embodiments described herein provide prioritization of collaborationgroups (rooms) and content based on activities of participants of thecollaboration groups. In one or more embodiments, notifications andpresentation of collaboration rooms and messages may be targeted in anintelligent, effective, and meaningful way for users of thecollaboration rooms. Content presentation of the collaboration room andmessages may be adapted for a user based on the usage patterns of otherparticipants in that room.

As described in detail below, one or more embodiments provide anintelligent automated collaboration system that does not require manualuser intervention or knowledge to determine the relevance and importanceof a collaboration group and content. For example, each collaborationroom and message may be assigned a priority based on tracked activity ofparticipants of the collaboration group. The collaboration groups may beappropriately filtered based on tracking information and the contentadapted for presentation to a user based on usage patterns ofparticipants of the collaboration groups. One or more embodiments mayprovide notification to the user of rooms or messages that are morelikely to be of significant interest based on the actual trends of howother participants are viewing or responding to messages in the room.Unimportant information may be suppressed or hidden to save the uservaluable time in not having to trudge through all of the unimportantinformation and thereby provide quick and easy access to conversationsthat are likely to be of most interest to the user.

Referring now to the drawings, and first to FIG. 1, a simplified networkin which embodiments described herein may be implemented is shown. Theembodiments operate in the context of a data communication networkincluding multiple network devices. The network may include any numberof network devices in communication via any number of nodes (e.g.,routers, switches, gateways, controllers, access devices, aggregationdevices, core nodes, intermediate nodes, or other network devices),which facilitate passage of data within the network. The nodes maycommunicate over one or more networks (e.g., local area network (LAN),metropolitan area network (MAN), wide area network (WAN), virtualprivate network (VPN) (e.g., Ethernet virtual private network (EVPN),layer 2 virtual private network (L2VPN)), virtual local area network(VLAN), wireless network, enterprise network, corporate network, datacenter, Internet, intranet, radio access network, public switchednetwork, or any other network).

The network shown in the example of FIG. 1 includes a collaborationserver 12 in communication with a plurality of user devices (endpoints,client devices, hosts, stations) 16 via a network 14. The collaborationserver 12 may communicate with the user devices 16 via any number ortype of network devices and may provide collaboration services to anynumber of clients over one or more networks 14.

The user device 16 may comprise, for example, a desktop computer, laptopcomputer, appliance, mobile phone, tablet, personal digital assistant,video or audio endpoint device, or any other user device. The userdevice 16 may be a managed or unmanaged device. For example, a user mayattempt to access the network 14 from a corporate-managed personalcomputer, personal network-accessible device, or public terminal. Theuser device 16 may be a wired device or wireless device, or configuredfor both wired communication (e.g., connected to a docking station) andwireless communication. A plurality of users may communicate within oneor more collaboration groups through the collaboration server 12.

The term “collaboration server” as used herein may refer to one or morenetwork devices, systems, or services operable to provide chat orcommunication services for a plurality of users in a collaborationgroup. The collaboration server 12 may, for example, be a stand-alonedevice or may comprise a group of network devices operable to provide adistributed collaboration service (e.g., cloud-based service) in one ormore networks. As described below, the collaboration server 12 mayinclude information gathering services and one or more databases forstoring tracking information.

The collaboration server 12 may provide a collaboration suite for use bygroups or teams in meeting, messaging, calling, creating, whiteboarding, and sharing ideas in a continuous work stream before, during,or after meetings. In one or more embodiments, the collaboration server12 may be in communication with one or more boards or displays toprovide white boarding and video conferencing, and one or more audio orvideo devices for use in a conference room. The collaboration server 12may be any type of device that facilitates online chat discussions suchas a server that maintains one or more collaboration groups (alsoreferred to as rooms).

Communications including, for example, instant messaging, textmessaging, or transfer of any type of content including, for example,text, voice, graphics, audio, video, files, documents, and the like, maybe supported by the collaboration server 12. The collaboration server 12may be used to enable one-to-one or team persistent messaging andcontent. In one or more embodiments, the collaboration server 12 mayallow a user to get another user's attention by mentioning (tagging) auser's name in their message. Users may also be able to select one ormore favorite spaces or flag a message transmitted in the collaborationgroup. Messages or files received at or transmitted by the collaborationserver 12 may be encrypted in accordance with any suitable encryption(e.g., HTTPS or other format). The collaboration server 12 may alsoprovide user authentication or be in communication with one or moreauthentication servers (not shown).

As described in detail below, the collaboration server 12 includes aprioritization module 15 operable to prioritize collaboration groups andcontent, and select a format for notifying a user of a new message(e.g., pop-up notification, prioritized ordering in list of messages,highlighted message, etc.) based on activity of participants within thecollaboration group.

The collaboration server 12 may further include a database (local,remote, distributed) for collecting activity tracking information withinthe collaboration group, as described below with respect to FIG. 4. Thedatabase may also store messages along with priorities for each messageand collaboration group, and user information.

Tracking information may include participants' dwell time and scrollpattern within a room, message read patterns, message responses, contentre-read, attachment previews, or any other tracking information. In oneexample, dwell time may take into account the number of new messagesdisplayed on the client device 16 and the average time that each unreadmessage is rendered to the user. Scroll depth may measure how many newmessages on clicking into a room are actually read by tracking whether auser actually scrolled back to view the new messages. Other trackinginformation may include how often a message is re-read or what percentof users look at room content attachment previews. The system may alsotrack which posts are read by the user so that the priority of roomscontaining read posts by the user can be increased. Tracking informationmay be attained by a collaboration client 17 at the user device 16 andtransmitted to the collaboration server 12, as described below.

The collaboration client 17 (e.g., application, software, module, logic)at the user device 16 is configured to communicate with thecollaboration server 12 to facilitate communications between any numberof users within one or more collaboration groups (rooms). Thecollaboration client 17 may be a stand-alone application or integratedinto an operating system of the user device 16 or another applicationexecuting on the user device, such as a web browser.

The user device 16 also comprises a display screen 18 for presenting oneor more collaboration (chat) windows 19, which may be presented on thescreen based on prioritization by the prioritization module 15 at thecollaboration server 12, as described in detail below. One or moremessages or notifications may appear in each window 19. For example, acollaboration session may comprise a list of prioritized messages from asender to one or more recipients, who view sent and received messages inthe collaboration client 17 that provides the collaboration room window19 on the computer screen 18. As described further below, messageswithin a collaboration session may be presented in an order based on apriority determined by the prioritization module 15 or one or moremessages may be highlighted or filtered based on a priority assigned tothe message. It is to be understood that any number of windows 19comprising any type or number of messages or notifications may bedisplayed on the client screen 18 in any format, size, shape, orarrangement.

In one or more embodiments, users of the collaboration system may beassociated with one or more groups or teams and correspondingcollaboration spaces. Thus, within a collaboration group, a user mayhave a defined relationship (e.g., partner, team member, team leader,associate, etc.) with a participant or a set (group) of participantswithin the collaboration group. As described below, a relationshipbetween a user and one or more other participants may be used inprioritizing messages within the collaboration group or prioritizing thecollaboration group relative to other collaboration groups. Therelationship between different users within a collaboration group may beidentified in a database stored at the collaboration server 12 or aremote database such as an authentication server or other database thatprovides user information.

The term “user” as used herein may refer to a user profile, user device,or any other identifier associated with a participant in thecollaboration group.

The collaboration server 12 may track activity of participants of thecollaboration group, assign metrics to one or more activities, weightthe metrics, and utilize an algorithm to calculate priorities forcollaboration rooms and messages. For example, the collaboration server12 may collate the activity tracking information using an algorithm thattakes into account weighting inputs (system or user specific) and usethe prioritized outputs to decide how to present notifications toindividual users. A notification may be presented to a user in the formof a notification pop-up, highlighted message, audio sound, flag,prioritized ordered lists of conversations and curated content, or anycombination of these or other notification formats.

It is to be understood that the network devices and topology shown inFIG. 1 and described above is only an example and the embodimentsdescribed herein may be implemented in networks comprising differentnetwork topologies or network devices, or using different protocols,without departing from the scope of the embodiments. For example, thenetwork may include any number or type of network devices thatfacilitate passage of data over the network (e.g., routers, switches,gateways, controllers), network elements that operate as endpoints orhosts (e.g., servers, virtual machines, clients), and any number ofnetwork sites or domains in communication with any number of networks.Thus, network nodes may be used in any suitable network topology, whichmay include any number of servers, accelerators, virtual machines,switches, routers, appliances, controllers, or other nodesinterconnected to form a large and complex network, which may includecloud or fog computing. Nodes may be coupled to other nodes through oneor more interfaces employing any suitable wired or wireless connection,which provides a viable pathway for electronic communications.

FIG. 2 illustrates an example of a network device 20 (e.g.,collaboration server 12 in FIG. 1) that may be used to implement theembodiments described herein. In one embodiment, the network device 20is a programmable machine that may be implemented in hardware, software,or any combination thereof. The network device 20 includes one or moreprocessor 22, memory 24, network interface 26, and prioritization module28.

Memory 24 may be a volatile memory or non-volatile storage, which storesvarious applications, operating systems, modules, and data for executionand use by the processor 22. Memory 24 may include, for example, one ormore databases for storing user information, activity data,prioritization data, network data, collaboration groups, or otherinformation. One or more components of the prioritization module 28(e.g., code, logic, software, firmware, application, database) may alsobe stored in memory 24. The network device 20 may include any number ofmemory components.

Logic may be encoded in one or more tangible media for execution by theprocessor 22. The processor 22 may be configured to implement one ormore of the functions described herein. For example, the processor 22may execute codes stored in a computer-readable medium such as memory 24to perform processes described below with respect to FIG. 3. Thecomputer-readable medium may be, for example, electronic (e.g., RAM(random access memory), ROM (read-only memory), EPROM (erasableprogrammable read-only memory)), magnetic, optical (e.g., CD, DVD),electromagnetic, semiconductor technology, or any other suitable medium.In one example, the computer-readable medium comprises a non-transitorycomputer-readable medium. The network device 20 may include any numberof processors 22.

The network interface 26 may comprise any number of interfaces(linecards, ports) for receiving data or transmitting data to otherdevices. As shown in FIG. 1, the interface provides for communicationwith the plurality of endpoints 16 associated with users belonging toone or more collaboration groups. The interface 26 may, for example,receive user information including user activity (e.g., dwell time,scroll depth, content read, etc.) and transmit collaboration messages,notifications, and associated priority information. The networkinterface 26 may include, for example, an Ethernet interface forconnection to a computer or network. The network interface 26 may beconfigured to transmit or receive data using a variety of differentcommunication protocols. The interface 26 may include mechanical,electrical, and signaling circuitry for communicating data over physicallinks coupled to the network.

The user device 16 (FIG. 1) may also include a processor 22, memory 24,and interface 26, as shown in FIG. 2. One or more components of thecollaboration client 17 (e.g., software, logic, module, database) mayalso be stored in memory 24. The interface 26 may be used to transmitmessages and user information such as user activity with respect to oneor more collaboration groups, and receive messages, notifications, andrelated priority information. As previously noted, the interfaces 26 forthe user device may be wired or wireless.

It is to be understood that the network device 20 shown in FIG. 2 anddescribed above is only an example and that different configurations ofnetwork devices may be used. For example, the network device 20 mayfurther include any suitable combination of hardware, software,algorithms, processors, devices, components, modules, or elementsoperable to facilitate the capabilities described herein.

FIG. 3 is a flowchart illustrating an overview of a process forprioritization of collaboration groups and messages, in accordance withone embodiment. The collaboration system (e.g., collaboration server 12in FIG. 1) receives user information for one or more collaborationgroups at step 30. The collaboration server 12 may, for example, storeuser information in one or more local or remote databases or requestuser information when the user logs in. A user may be identified, forexample, at a login operation by entering a username and password or auser may be identified based on the device 16 on which the collaborationclient 17 is executed. The information may include, for example,identification of users within a group or team, relationship of userswithin the group, interaction or privacy information, and the like. Oneor more organizations, groups, or teams that the user is associated withand a relationship between the user and one or more other participantsmay be obtained at the login process or a lookup may be performed forthe user in a database (e.g., team list, organizational hierarchy).

The collaboration server 12 tracks user activity along with all otherparticipant activity for a collaboration group (step 32). Tracking mayinclude, for example, gathering information on one or more collaborationrooms based on message read patterns, scroll patterns (scroll depth,scroll speed), dwell time, clicks (clicks and click through rate),skips, content sharing, forwarding of messages, responding to messages,re-read of messages, preview or download of room content attachments,time spent in room or conversations, or any combination of these orother activities by the user and other participants. This data may beanalyzed and interpreted by the collaboration system 12, and based onthe information gathered, the system may assign a priority to one ormore messages transmitted in the collaboration group (step 34). In oneexample, system or user based prioritized weightings may be applied. Thecollaboration system 12 presents a notification to the user of a newmessage in a format based on the message priority (step 36). Thenotification format may include, for example, presenting the message ina prioritized message list, providing a message notification pop-up,highlighting a high priority message, playing an audio sound for a highpriority message, filtering or hiding a low priority message, moving aroom containing one or more high priority messages to the top of a roomlist, or any other type of notification. The collaboration system 12 mayalso create a per user prioritized list of rooms. In one example, whenthe user clicks on a collaboration room, the user will be presented witha prioritized message or messages, based on prioritization lists createdat the collaboration server.

It is to be understood that the process shown in FIG. 3 and describedabove is only an example and that steps may be added, combined, deleted,or modified without departing from the scope of the embodiments. Asdescribed above with respect to FIG. 2, the processor 22 may beconfigured to perform one or more steps shown in FIG. 3.

As previously described, the collaboration system may targetnotifications and presentation of collaboration rooms and adapt contentpresentation of collaboration rooms to a room participant based on theusage patterns of the user and other participants in the room. Thefollowing describes examples of activity tracking that may be used bythe system in determining how to prioritize rooms and messages, andpresent notifications to a user, and how priorities may be computed andapplied to notifications.

In one embodiment, a percentage of content that is actually read by aparticipant may be tracked, along with what percentage of participants(or a set of participants) in that room read the content. This may bedone, for example, by monitoring dwell times for participants ordetermining how often and how far the participants have scrolled back upin a room to see the content. This information may be used toautomatically rate (prioritize) the collaboration room, content, andmessages for a user so that the content may be tailored appropriately tobe presented to the user.

In one or more embodiments, dwell time and scroll depth may be used increating a prioritized weighting for a room or content in the room.Dwell time and scroll depth may include historical data for the user orother participants. The collaboration system may measure the user'sindividual dwell time and scroll depth within every room, and alsomeasure the average dwell time and scroll depth for all users(participants) within each room.

The tracked scroll depth for a collaboration room may be more granularthan scroll depth for webpages and may explicitly measure how many newmessages are actually read in a room upon clicking into the room bytracking whether a user actually scrolled back to view new messages. Thescroll depth may be used to accurately determine whether users aremerely clicking into a room to mark it as ‘read’ or whether they areactually scanning the full new content of the room.

The dwell time may take into account the number and overall size of newmessages that are displayed on the user device. The collaboration systemmay also measure the average time that each unread message is renderedto the user, and determine if the user is simply scrolling throughmessages too fast to actually read them.

Average scroll depth and dwell times may be tracked per organization,team, or user, for example. These metrics may be refined by thecollaboration system over time and the system may determine if eithermetric is higher or lower than average for particular rooms.

The system may also identify important messages based on dwell time. Forexample, if the average dwell time is high for a message, then thesystem may flag the message as being relatively important. The relativeimportance may differ depending on what rooms a user is in or what teamsthe user belongs to. In one example, if the dwell time for a particularmessage is high for all members of a user's team, then it may be animportant message that the user will want to read. The collaborationsystem may notify users of the particular room containing the messageand additionally flag the message within the room as being important.

In one or more embodiments, the collaboration system may be configuredto track how often room contents are re-read. For example, the systemmay track how often users revisit already read rooms, and how oftenusers re-read particular messages for use in identifying important roomsand messages. This may also be done on a per organization, team, or userbasis.

The collaboration system may also track the percentage of users thatlook at room content attachment previews, how many thumbnails theypreview, how many users download room content attachments, or anycombination of these or other metrics. The metrics may be more granular,for example, if the user's immediate team members are previewing ordownloading content. The collaboration system may then notify users ofthe room and additionally flag particular content within the room asbeing important. The same techniques may also be applied in tracking howmany participants and which participants click on URL (Uniform ResourceLocator) links.

The collaboration system may also track inclusion of a keyword or namewithin room content. For example, the system may track how many@mentions (tagging) there are for the user or the user's immediate teammembers in unread content in one or more rooms. If the user's immediateteam members are being mentioned in a room, the notification rank of theroom may be increased for the user.

In one or more embodiments, the collaboration system may track whatposts the user reads and raise the notification priority of roomscontaining unread posts by those users. Similarly, a metric may trackroom content that is read, forwarded, saved, or downloaded byparticipants in the room. In one example, the system may track activitybased on who read the content. For example, if over fifty percent of theuser's own team members read more than eighty percent of the content ina particular room (or spent a certain amount of time scanning content inthe room), then it is far more likely to be of relevance to the user, inwhich case the user would likely prefer notifications for new posts tothat room to be presented in a priority manner and the user may alsowant to be shown notifications independent of the user's setting orensure that the room is at the top of the user's room reading list whenthe user next access the messaging client.

Similarly, if very few users in a room (or a very few in a certain setof trusted peers or other set of participants) read or respond toparticular content, then it is unlikely to be of interest to the user,in which case the relevance or weighting may be reduced fornotifications in that room (at least for a current period of time) andnot presented as a top priority room in the user's ‘unread’ rooms list(e.g., filter it in other less important ways).

The system may provide a relative weighting to one or more relevantmetrics, and based on this weighting determine a format in which todisplay room notifications (e.g., new message or content, move a room totop of list). In one or more embodiments, the collaboration system maybe self-learning. For example, the system may determine that the useralways clicks on the fourth or fifth unread room, in which case it canadjust the weighting of the relevant metrics so that those rooms willbegin to move up in relative priority.

All of the information described above may be attained at a user'sclient level and sent back to the cloud based messaging server 12, whichin turn collates the information using an algorithm that takes intoaccount simple or complex weighting inputs (system or user specific) anduses the prioritized outputs to decide how to present notifications toindividual users. Based on the activity tracking and weighting inputs, apriority may be calculated for a collaboration room or content in acollaboration room. The priority of a room may be based at least in parton the priority of messages or other content in that room. Similarly,the priority of a message may be based at least in part on the priorityof the collaboration group in which the message is transmitted.

The term “priority” as used herein may refer to a relative priority thatmay be used to provide an ordered list of rooms, content, or messages ormay be a rating or ranking (e.g., high, normal, low, 1, 2, 3, . . . )applied to individual rooms or messages. The priority of a room may beused, for example, in determining where on a room reading list to placethe room. The priority of a new message may be used, for example, indetermining how or if to present a notification of the message to theuser. The notification may include, for example, a notification pop-up,prioritized ordered list of conversations or messages, curated contentof a room, highlighted content, filter of message, flag of message,update priority of room containing message, or any combination these orother notifications.

It is to be understood that the tracking, metrics, and notificationsdescribed above are only examples, and other types of activity may betracked or other metrics or notifications may be used, without departingfrom the scope of the embodiments.

FIG. 4 illustrates an example of intelligent and targeted messagingnotifications and filtering, in accordance with one embodiment. Acollaboration group window at a collaboration client is shown at 40. Thewindow 40 may include, for example, a conversation area 41 that shows auser's current messaging in a chat room. A list of unread messages 42that have been prioritized by the system are also shown in the chatwindow. The window 40 may also include a participant list showing thecurrent participants or team members in the chat room. Each participantin the chat room may be represented by an icon 43 containing a pictureor name of the participant, for example.

A collaboration system cloud (distributed collaboration server) 44 mayinclude a cloud information gathering service and database 45, whichgathers information about all rooms. Information may include, forexample, message read patterns, scroll patterns, dwell time, whoresponded to particular messages in the room, time spent in the room orsection of a conversation, or any other information relating toparticipant activity in the collaboration room. The collaboration system44 collects the system in or more databases 45 and applies system oruser based prioritized weightings, as previously described.

In the example shown in FIG. 4, a per user prioritized list is shownwith a room priority list and indication as to whether a notificationshould be sent for a message. Box 46 shows a list of messages with thefirst message identified as a priority message. The system notifies theuser of the high priority message with a message notification pop-up 47.When the user clicks on the room, he can jump straight to theprioritized highlighted message as shown at 48.

It is to be understood that the system shown in FIG. 4 is only anexample and that other formats, tables, arrangements, or notificationsmay be used, without departing from the scope of the embodiments.

As can be observed from the foregoing, one or more embodiments describedherein may provide numerous advantages. For example, one or moreembodiments provide advantages including cost and effectiveness ofdelivering an innovative and automated way of filtering communicationnoise, thereby allowing users to be far more productive. This willbecome more important as collaborative enterprise messaging systemsbecome more prevalent in the workplace and users have the need to usethem efficiently amidst the plethora of information that will pervadesuch systems, and without such methods, such systems may be renderedineffective and unusable.

Although the method and apparatus have been described in accordance withthe embodiments shown, one of ordinary skill in the art will readilyrecognize that there could be variations made without departing from thescope of the embodiments. Accordingly, it is intended that all mattercontained in the above description and shown in the accompanyingdrawings shall be interpreted as illustrative and not in a limitingsense.

What is claimed is:
 1. A method comprising: associating a user with acollaboration group at a collaboration server; tracking activity ofparticipants in the collaboration group at the collaboration server;processing a message received in the collaboration group at thecollaboration server; assigning a priority to the message for the userbased on said activity of the participants in the collaboration group;and presenting a notification of the message to the user based on saidpriority of the message.
 2. The method of claim 1 further comprisingassigning a priority to the collaboration group relative to othercollaboration groups, wherein said priority of the message is based atleast in part on said priority of the collaboration group.
 3. The methodof claim 1 wherein tracking activity comprises measuring dwell time ofthe participants within the collaboration group, said dwell time basedon a number of messages displayed and a time that the messages aredisplayed on a participant's device.
 4. The method of claim 1 whereintracking activity comprises measuring scroll depth of the participantswithin the collaboration group, said scroll depth based on a number ofmessages read by the participants.
 5. The method of claim 1 whereintracking activity comprises monitoring re-read of contents of thecollaboration group.
 6. The method of claim 1 wherein tracking activitycomprises monitoring action taken by said participants for attachmentsto messages in the collaboration group.
 7. The method of claim 1 whereinassigning said priority comprises analyzing dwell time and scroll depthfor a set of said participants based on a relationship between saidparticipants and the user.
 8. The method of claim 1 wherein saidpriority is based at least in part on said tracked activity for aspecified set of said participants having a defined relationship withthe user.
 9. The method of claim 1 wherein assigning said prioritycomprises weighting said tracking activity and running an algorithmusing weights to assign said priority.
 10. The method of claim 1 whereinpresenting said notification comprises presenting a message notificationpop-up for high priority messages.
 11. The method of claim 1 whereinpresenting said notification comprises inserting the message into aprioritized ordered list.
 12. An apparatus comprising: an interface forreceiving tracked activity of participants in a collaboration group andtransmitting notifications to a user of the collaboration group; aprocessor for processing a message received in the collaboration group,assigning a priority to the message for the user based on said activityof the participants in the collaboration group, and presenting anotification of the message to the user based on said priority of themessage; and memory for storing metrics computed based on said trackedactivity and used in assigning said priority.
 13. The apparatus of claim12 wherein said priority is based at least in part on a priority of thecollaboration group relative to other collaboration groups.
 14. Theapparatus of claim 12 wherein said tracked activity comprises dwell timeof the participants within the collaboration group, said dwell timebased on a number of messages displayed and a time that the messages aredisplayed on a participant's device.
 15. The apparatus of claim 12wherein said tracked activity comprises scroll depth of the participantswithin the collaboration group, said scroll depth based on a number ofmessages read by the participants.
 16. The apparatus of claim 12 whereinassigning said priority comprises analyzing dwell time and scroll depthfor a set of said participants based on a relationship between saidparticipants and the user.
 17. Logic encoded on one or morenon-transitory computer readable media for execution and when executedoperable to: associate a user with a collaboration group at acollaboration server; track activity of participants in thecollaboration group; process a message received in the collaborationgroup; assign a priority to the message for the user based on saidactivity of the participants in the collaboration group; and present anotification of the message to the user based on said priority of themessage.
 18. The logic of claim 17 further comprising logic forassigning a priority to the collaboration group relative to othercollaboration groups, wherein said priority of the message is based atleast in part on said priority of the collaboration group.
 19. The logicof claim 17 wherein said priority is based at least in part on saidtracked activity for a specified set of said participants having adefined relationship with the user.
 20. The logic of claim 17 whereinsaid tracked activity comprises scroll depth and dwell time of saidparticipants in the collaboration group.